package de.tum.datatypes;

import java.util.Date;

/**
 * Datatype displaying an exam with all its properties
 * @author Rupert
 *
 */
public class Exam {
	/**
	 * Properties
	 */
	private int id;
	private String subjectName;
	private String subjectIdentification;
	private Date  examDate;
	private Date evaluationBeginDate;
	private Date evaluationEndDate;
	private int numberOfExercises;
	private int numberOfParticipants;
	private double[] maxPointsPerExercise;
	private double[] gradingArray;
	
	
	public Exam(){
	}
	
	
	public Exam(int id, String subjectName, String subjectIdentifcation, Date examDate, Date evaluationBeginDate, Date evaluationEndDate, int numberOfExercises,
					int numberOfParticipants, double[] maxPointsPerExercise, double[] gradingArray){
		this.id = id;
		this.subjectName = subjectName;
		this.subjectIdentification = subjectIdentifcation;
		this.examDate = examDate;
		this.evaluationBeginDate = evaluationBeginDate;
		this.evaluationEndDate = evaluationEndDate;
		this.numberOfParticipants = numberOfParticipants;
		this.maxPointsPerExercise = maxPointsPerExercise;
		this.gradingArray = gradingArray;
	}
	

	
	
	
	
	/**
	 * Getter & Setter
	 */
	
	public String getSubjectName() {
		return subjectName;
	}
	public void setSubjectName(String subjectName) {
		this.subjectName = subjectName;
	}
	public String getSubjectIdentification() {
		return subjectIdentification;
	}
	public void setSubjectIdentification(String subjectIdentification) {
		this.subjectIdentification = subjectIdentification;
	}
	public Date getExamDate() {
		return examDate;
	}
	public void setExamDate(Date examDate) {
		this.examDate = examDate;
	}
	public int getNumberOfExercises() {
		return numberOfExercises;
	}
	public void setNumberOfExercises(int numberOfExercises) {
		this.numberOfExercises = numberOfExercises;
	}
	public double[] getMaxPointsPerExercise() {
		return maxPointsPerExercise;
	}
	public void setMaxPointsPerExercise(double[] maxPointsPerExercise) {
		this.maxPointsPerExercise = maxPointsPerExercise;
	}
	public int getNumberOfParticipants() {
		return numberOfParticipants;
	}
	public void setNumberOfParticipants(int numberOfParticipants) {
		this.numberOfParticipants = numberOfParticipants;
	}
	public double[] getGradingArray() {
		return gradingArray;
	}
	public void setGradingArray(double[] gradingArray) {
		this.gradingArray = gradingArray;
	}
	public Date getEvaluationBeginDate() {
		return evaluationBeginDate;
	}
	public void setEvaluationBeginDate(Date evaluationBeginDate) {
		this.evaluationBeginDate = evaluationBeginDate;
	}
	public Date getEvaluationEndDate() {
		return evaluationEndDate;
	}
	public void setEvaluationEndDate(Date evaluationEndDate) {
		this.evaluationEndDate = evaluationEndDate;
	}


	public int getId() {
		return id;
	}
	public void setId(int id){
		this.id = id;
	}
	
}
